1. Vektoren, Rechenoperationen, L\344nge, Normierung, Orthogonalit\344t, Winkel, Skalarprodukt, Kreuzprodukt, Spatprodukt, Transponieren, lineare Unabh\344ngigkeit, Basen und Dimension1.1. Definition von Vektoren, Spaltenvektoren/Zeilenvektoren:Zur Definition eines Vektors x ben\366tigen wir durchweg das "LinearAlgebra"-Pakte, das durch die Eingabe "with(LinearAlgebra):" eingebunden wird. Anschlie\337end definiert man einen n-dimensionalen Spaltenvektor durch "<x_1,x_2,...,x_n>" (bzw. "Vector([x_1,x_2,...,x_n])") und einen n-dimensionalen Zeilenvektor durch "<x_1|x_2|...|x_n>" (bzw. "Vector[row]([x_1,x_2,...,x_n])"). Alternativ zu diesem Paket, gibt es auch das Paket "linalg", dessen entsprechende Funktionen wir lediglich am Rande erw\344hnen werden. In diesem Zusammenhang wird ein Vektor x durch "vector([x_1,x_2,...,x_n])" definiert. Beispiele:restart:
x := <1,2,3>; (Spaltenvektor)
x := <1|2|3>; (Zeilenvektor)
with(LinearAlgebra):
x := Vector([1,2,3]); (Spaltenvektor)
x := Vector[row]([1,2,3]); (Zeilenvektor)Aufgaben: Definiere die folgenden Vektoren
a) (2, -1, -3), (-3, 0, 4), (1, 1, -1) als Spaltenvektoren b) (1, 5, 7), (-1, 3, 6), (0, 4, 5) als Zeilenvektoren1.2. Rechenoperationen f\374r Vektoren, Vektoraddition, Multiplikation mit Skalaren, Nullvektor, Einheitsvektor und Inversvektor:Zu den Rechenoperationen von n-dimensionalen Vektoren z\344hlen die Vektoraddition und Multiplikation mit Skalaren. Die in diesem Bereich wichtigen Funktionen sind "Add(x,y)" (bzw. "VectorAdd(x,y)") zur Addition und "ScalarMultiply(x,lambda)" (bzw. "VectorScalarMultiply(x,lambda)") zur Multiplikation mit Skalaren. Beispiele:with(LinearAlgebra):
x := <1,5,7>: (1. Vektor)
y := <-1,3,6>: (2. Vektor)
lambda := 2; (Skalarwert)
x+y; (Vektoraddition)
VectorAdd(x,y); (Vektoraddition)
Add(x,y); (Vektoraddition, allgemeinste Fassung. Erm\366glicht auch Matrizenaddition)
lambda*x; (Multiplikation mit Skalaren)
VectorScalarMultiply(x,lambda); (Multiplikation mit Skalaren)
ScalarMultiply(x,lambda); (Multiplikation mit Skalaren, allgemeinste Fassung. Erm\366glicht auch Skalarmultiplikation bei Matrizen)Der n-dimensionale Nullvektor (bzw. das additive neutrale Element) ist durch "ZeroVector(n)", der Inversvektor (bzw. das additive inverse Element) zu einem Vektor x ist durch "-x" und der k-te n-dimensionale Einheitsvektor ist durch "UnitVector(k,n)" gegeben. Beispiel:with(LinearAlgebra):
x := <1,5,7>;
ZeroVector(3); (Nullvektor)
-x; (Inversvektor)
UnitVector(2,3); (Einheitsvektor)Aufgaben: Berechne
a) x+y, mx-ny, x+y+z f\374r die Spaltenvektoren x=(2, -1, -3), y=(-3, 0, 4), z=(1, 1, -1) und die Skalarwerte m=3, n=71.3. Eigenschaften von Vektoren, L\344nge, Normierung, Orthogonalit\344t, Winkel, Skalarprodukt, Kreuzprodukt, Spatprodukt, Transponieren:Die (euklidische) L\344nge (bzw. Vektornorm) eines Vektors x wird von der Funktion "VectorNorm(x,2)" (bzw. "norm(x,2)") berechnet. Beispiel:with(LinearAlgebra):
VectorNorm(<1,2,3>, 2);Die Normierung eines Vektors x wird von der Funktion "Normalize(x, Euclidean, conjugate=false)" (bzw. "normalize(x)") berechnet. Beispiele:with(LinearAlgebra):
Normalize(<1,2,3>, Euclidean, conjugate=false);Das Skalarprodukt zweier Vektoren x, y wird von der Funktion "DotProduct(x, y)" (bzw. "dotprod(x, y)") berechnet. Zur Erinnerung: Zwei Vektoren x, y sind genau dann orthogonal, wenn ihr Skalarprodukt 0 ist. Beispiel:with(LinearAlgebra):
DotProduct(<3,2,-1>, <2,-5,2>);Der Winkel zwischen zwei Vektoren x, y wird von der Funktion "VectorAngle(x,y)" (bzw. "angle(x,y)") berechnet. Beispiel:with(LinearAlgebra):
VectorAngle(<1,0,0>, <0,1,0>);Das Kreuzprodukt zweier Vektoren x, y wird von der Funktion "CrossProduct(x, y)" (bzw. "crossprod(x, y)") berechnet. Beispiel:with (LinearAlgebra):
CrossProduct(<3,2,-1>, <2,-5,2>);Das Spatprodukt dreier Vektoren x, y, z erh\344lt man, indem man das Kreuzprodukt von x und y mit z skalarmultipliziert. Beispiel:with(LinearAlgebra):
x := <1,1,2>:
y := <-2,3,7>:
z := <-4,-2,2>:
DotProduct(CrossProduct(x,y),z);Die Transposition eines Vektors x wird von der Funktion "Transpose(x)" (bzw. "transpose(x)") berechnet. Beispiel:with(LinearAlgebra):
x := <3,2,-1>;
Transpose(x);Aufgaben: Berechne die L\344nge, die Normierung, das Skalarprodukt und den Winkel der Vektoren a) x=(2, 3, 1, -1, 1), y=(2, 1, -1, -1, 1)Bestimme alpha derart, dass die folgenden Vektoren orthogonal sind b) x=(1, alpha, -3), y=(2, -5, 4)
Berechne das Kreuzprodukt der Vektoren c) x=(1, 1, 2), y=(2, -1, 3) d) x=(2, 1, -1), y=(-4, -2, 2)
Transponiere den Vektor
e) x=(3, -4, 0, 2)
Berechne das Spatprodukt der Vektoren
f) x=(2,-1,3), y=(11,-9,4), z=(0,1,1)1.4. Lineare Unabh\344ngigkeit, Basen und Dimension:Die lineare Unabh\344ngigkeit von Vektoren x_1,...,x_n l\344sst sich beispielsweise mithilfe der Funktion "LinearSolve(<x_1|...|x_n>,<0,...,0>)" (bzw. "linsolve()") bestimmen. Ersteres ist im Paket "LinearAlgebra" und letzteres im Paket "linalg" enthalten. Besitzt dieses Gleichungssystem nur die triviale L\366sung, also nur die L\366sung (0,...,0), so sind die Vektoren x_1,...,x_n linear unabh\344ngig, andernfalls sind sie linear abh\344ngig. Beispiele:with(LinearAlgebra):
x1 := Vector([1,0,0]):
x2 := Vector([1,1,0]):
x3 := Vector([1,1,1]):
LinearSolve(<x1|x2|x3>,<0,0,0>); (Linear unabh\344ngig)
x1 := Vector([2,-1,3]):
x2 := Vector([1,1,-2]):
x3 := Vector([3,-3,8]):
LinearSolve(<x1|x2|x3>,<0,0,0>); (Linear abh\344ngig)Die \334berpr\374fung, ob gewisse Vektoren x_1,...,x_n eine Basis (bzw. ein Erzeugendensystem) vom IR^n bilden, l\344sst sich mithilfe der Funktion "Basis([x_1,...,x_n])" (bzw. "basis({x_1,...x_n})") machen, die im Paket "LinearAlgebra" (bzw. "linalg") enthalten ist. Beispiele:with(LinearAlgebra):
x1 := Vector([1,0,0]): x2 := Vector([1,1,0]): x3 := Vector([1,1,1]):
Basis([x1,x2,x3]); (3 linear unabh\344ngige Vektoren)
x1 := Vector([2,-1,3]): x2 := Vector([1,1,-2]): x3 := Vector([3,-3,8]):
Basis([x1,x2,x3]); (2 linear unabh\344ngige und 1 linear abh\344ngiger Vektor)
x1 := Vector([2,-1,3]): x2 := Vector([1,1,-2]):
Basis([x1,x2]); (Test f\374r weniger Vektoren)
x1 := Vector([1,0,0]): x2 := Vector([0,1,0]): x3 := Vector([0,0,1]): x4 := Vector([1,1,1]):
Basis([x1,x2,x3,x4]); (Test f\374r mehrere Vektoren)Wir k\366nnen auch die Darstellung eines Vektors als Linearkombination der Basisvektoren ermitteln, indem die Koeffizienten der Basisfunktionen bestimmt werden. Dazu verwenden wir erneut die Funktionen "LinearSolve(<x_1|...|x_n>,<0,...,0>)" (bzw. "linsolve()"). Beispiel:with(LinearAlgebra):
x1 := Vector([1,1,1]): (1. Basisvektor)
x2 := Vector([1,2,3]): (2. Basisvektor)
x3 := Vector([2,-1,1]): (3. Basisvektor)
X := Vector([1,-2,5]): (Vektor zur Bestimmung der Linearkombination)
LinearSolve(<x1|x2|x3>,X); (Linear unabh\344ngig)TTdSMApJM1JUQUJMRV9TQVZFLzM1ODI3MlgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIiIiIyIiJDYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzU3MzkyMFgqJSlhbnl0aGluZ0c2IjYiW2dsISQlISEhIiQiJCIiIiIiIyIiJDYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzU3NzY2MFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIiIiIyIiJDYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzU4MDQyMFgqJSlhbnl0aGluZ0c2IjYiW2dsISQlISEhIiQiJCIiIiIiIyIiJDYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzU4NjgyNFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiISIiKSIjODYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzU5MDU2NFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiISIiKSIjODYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzU5MzM5NlgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiISIiKSIjODYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzU5NzEyOFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIyIjNSIjOTYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzYwNTA4MFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIyIjNSIjOTYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzYwODUyMFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIyIjNSIjOTYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzM1ODMxMlgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIiIiJiIiKDYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzM1ODM1MlgqJSlhbnl0aGluZ0c2IyUlemVyb0c2IltnbCEjIiEhISIhIiQ2Igo=TTdSMApJM1JUQUJMRV9TQVZFLzYyMDQ3NlgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCEiIiEiJiEiKDYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzM1ODQzMlgqJSlhbnl0aGluZ0c2IyYlJXVuaXRHNiMiIiM2IltnbCEjIiEhISIhIiQ2Igo=TTdSMApJM1JUQUJMRV9TQVZFLzYzMjk2OFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCwkKiQiIzkjIiIiIiIjI0YrRiksJEYoI0YrIiIoCiwkRigjIiIkRik2Igo=TTdSMApJM1JUQUJMRV9TQVZFLzM1ODQzMlgqJSlhbnl0aGluZ0c2IyYlJXVuaXRHNiMiIiM2IltnbCEjIiEhISIhIiQ2Igo=TTdSMApJM1JUQUJMRV9TQVZFLzY0MjIyMFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiJCIiIyEiIjYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzY0NDk4MFgqJSlhbnl0aGluZ0c2IjYiW2dsISQlISEhIiQiJCIiJCIiIyEiIjYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzY0ODc4NFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIiIiIUYoNiIKTTdSMApJM1JUQUJMRV9TQVZFLzY1NTExNlgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIkYnIiIhNiIKTTdSMApJM1JUQUJMRV9TQVZFLzYyOTY5NlgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIkYnRic2Igo=TTdSMApJM1JUQUJMRV9TQVZFLzY2MzI2OFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIyEiIiIiJDYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzY2NzAwOFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIkYnISIjNiIKTTdSMApJM1JUQUJMRV9TQVZFLzY3MDgyMFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIyEiIiIiJDYiCg==TTdSMApJM1JUQUJMRV9TQVZFLzY3NDIyOFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIkYnISIjNiIKTTdSMApJM1JUQUJMRV9TQVZFLzY4MjUwNFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIiIiIUYoNiIKTTdSMApJM1JUQUJMRV9TQVZFLzY4NjI0NFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiISIiIkYnNiIKTTdSMApJM1JUQUJMRV9TQVZFLzY4OTAwNFgqJSlhbnl0aGluZ0c2IjYiW2dsISMlISEhIiQiJCIiIUYnIiIiNiIK